|
Common Intermediate Language (CIL, pronounced either "sil" or "kil") (formerly called Microsoft Intermediate Language or MSIL) is the lowest-level human-readable programming language defined by the Common Language Infrastructure (CLI) specification and is used by the .NET Framework and Mono. Languages which target a CLI-compatible runtime environment compile to CIL, which is assembled into an object code that has a bytecode-style format. CIL is an object-oriented assembly language, and is entirely stack-based. Its bytecode is translated into native code or — most commonly — executed by a virtual machine. CIL was originally known as Microsoft Intermediate Language (MSIL) during the beta releases of the .NET languages. Due to standardization of C# and the Common Language Infrastructure, the bytecode is now officially known as CIL.〔(【引用サイトリンク】 What is Intermediate Language(IL)/MSIL/CIL in .NET )〕 In an unrelated usage, CIL also refers to the C Intermediate Language, a simplified transformation of C used for further analysis.〔(【引用サイトリンク】title=CIL - Infrastructure for C Program Analysis and Transformation )〕 ==General information== During compilation of CLI programming languages, the source code is translated into CIL code rather than into platform- or processor-specific object code. CIL is a CPU- and platform-independent instruction set that can be executed in any environment supporting the Common Language Infrastructure,〔 〕 such as the .NET runtime on Windows, or the cross-platform Mono runtime. In theory, this eliminates the need to distribute different executable files for different platforms and CPU types. CIL code is verified for safety during runtime, providing better security and reliability than natively compiled executable files. The execution process looks like this: #Source code is converted to CIL i.e. Common Intermediate Language, which is the CLI's equivalent to assembly language for a CPU. #CIL is then assembled into a form of so-called bytecode and a CLI assembly is created. #Upon execution of a CLI assembly, its code is passed through the runtime's JIT compiler to generate native code. Ahead-of-time compilation may also be used, which eliminates this step, but at the cost of executable-file portability. #The computer's processor executes the native code. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Common Intermediate Language」の詳細全文を読む スポンサード リンク
|